In [16]:
library(Seurat)
library(ggpubr)
library(dplyr)
library(useful)
library(plyr)
library(RColorBrewer)
Attaching package: 'ggpubr'

The following object is masked from 'package:plyr':

    mutate

In [10]:
cd8_seurobj <- readRDS("scRCC_CancerCell_ReviewerResponse_CD8s_SeurObj.RDS")
head(cd8_seurobj@meta.data)
umap_cols <- c('#7FC97F','#5C86AB','#EB0A75', '#8B3B99')
DimPlot(cd8_seurobj, cols = umap_cols)
A df[,10]: 6 x 10
nCount_RNAnFeature_RNApatientpercent.mtFinalCellTypeICB_ResponseProgExhPhenoTermExhPhenoTerminally_Exhausted_SigProgenitor_Exhausted_Sig
<dbl><int><chr><dbl><fct><chr><chr><chr><dbl><dbl>
AAACCTGAGAATAGGG.p551321.532 768p551.673661241BB-Hi CD8ICB_PRNotNot 2.4584320.17772925
AAACCTGAGGCTAGGT.p551658.375 864p553.534967541BB-Hi CD8ICB_PRNotNot 2.1925510.21101681
AAACCTGCACTGTGTA.p551911.238 982p550.522229641BB-Hi CD8ICB_PRNotTermExh2.9192200.09795905
AAACCTGGTAAATGTG.p552690.1301185p550.857201441BB-Lo CD8ICB_PRNotTermExh2.7913240.23621876
AAACCTGTCAGATAAG.p551868.786 872p552.436986641BB-Lo CD8ICB_PRNotNot 2.0005810.18568887
AAACCTGTCCTGCTTG.p551604.849 843p551.819686041BB-Lo CD8ICB_PRNotNot 2.1187300.14704334
In [11]:
DefaultAssay(cd8_seurobj) <- "RNA"
In [12]:
Idents(cd8_seurobj) <- "patient"
In [14]:
p55 <- subset(cd8_seurobj, idents = c("p55"))

p55 <- FindVariableFeatures(p55, selection.method = "vst")
top10 <- head(VariableFeatures(p55), 10)
all.genes <- rownames(p55)
p55 <- ScaleData(p55, features = all.genes)
p55 <- RunPCA(p55, features = VariableFeatures(object = p55), npcs = 60)
ElbowPlot(p55,ndims = 50)
p55 <- RunUMAP(p55, dims = 1:30)
DimPlot(p55, group.by = "FinalCellType", cols = umap_cols)
Centering and scaling data matrix
PC_ 1 
Positive:  FTL, RPS18, MT-ND2, MT-ND3, LTB, EEF1A1, MT-CYB, ALOX5AP, PMCH, NEAT1 
	   MT-ATP6, RPS2, PATL2, ERN1, LINC00861, LINC00685, C1orf56, CXCR6, CISH, PIM2 
	   MT1G, CD52, AC133644.2, ITM2C, HOXB-AS1, DUSP6, MAF, AL359220.1, AC058791.1, DUSP1 
Negative:  STMN1, UBE2C, BIRC5, RRM2, TUBA1B, PCLAF, MKI67, CDK1, AURKB, TOP2A 
	   TYMS, ZWINT, TUBB, TUBB4B, CCNA2, ASF1B, NUSAP1, CKS1B, CDCA3, SPC25 
	   CENPA, KIFC1, H2AFX, HIST1H4C, CCNB2, CDKN3, HMGB2, CDCA8, HJURP, CDC20 
PC_ 2 
Positive:  TNFRSF18, PKM, TNFRSF9, NFKBIA, BIRC3, CRTAM, NFKB2, XCL1, GAPDH, HSP90AB1 
	   TPI1, GZMB, ENO1, EBI3, PGAM1, RGS16, BHLHE40-AS1, DUSP2, CTSW, FSTL3 
	   CD82, XCL2, PRF1, HLA-DQA1, CXCL13, SYNGR2, MFSD10, VCAM1, LSP1, HSPB1 
Negative:  CENPA, CCNB2, TOP2A, ASPM, AURKB, CDC20, BIRC5, CDCA3, CCNB1, CENPF 
	   GTSE1, MKI67, PLK1, DLGAP5, CDCA8, HJURP, TROAP, HMMR, CCNA2, UBE2C 
	   PIMREG, NUF2, CENPE, PSRC1, KIF2C, CDK1, HMGB3, NEK2, MXD3, CDKN3 
PC_ 3 
Positive:  FXYD2, CD74, CXCL13, HLA-DRB1, MIR155HG, CMC1, HLA-DRA, BIRC3, TNFRSF9, NFKB2 
	   VCAM1, TNFSF4, PMCH, RASSF4, AL391056.1, IZUMO4, UCP2, LINC01943, HLA-DQB1, AL606807.1 
	   HLA-DPA1, FSTL3, HLA-DQA1, TNFRSF18, CD70, IL10RA, EBI3, CD82, NFKBIA, SNX11 
Negative:  ZNF683, HOPX, CD52, KLRD1, RPS18, TRDC, S100A4, GZMB, TRGC2, CD63 
	   RPS2, GLUL, CLU, MATK, STOM, LINC01871, RPS21, CD99, APBA2, CEBPD 
	   ANXA2, SCML4, SERPINB6, HMGA1, IL32, ANXA1, PTMA, RPLP1, LDHA, DDIT4 
PC_ 4 
Positive:  MCM7, TK1, TYMS, PCNA, E2F1, PCLAF, FEN1, MYBL2, GINS2, DUT 
	   CLSPN, RRM2, CDT1, FAM111B, TCF19, MCM3, RAD51, RMI2, MCM10, WDR34 
	   DHFR, CENPU, CDC45, MCM5, DNAJC9, MCM2, UHRF1, SLBP, TEDC2, ASF1B 
Negative:  CCNB1, CDC20, CENPA, PIMREG, PLK1, NEK2, GZMB, KPNA2, HMMR, CCNB2 
	   IFNG, AURKA, TROAP, DLGAP5, ARL6IP1, CCL4, PSRC1, PIF1, ID2, ASPM 
	   DEPDC1, KNSTRN, PRF1, CENPF, KLRD1, CCL3, CDCA8, ZBED2, CENPE, CDKN3 
PC_ 5 
Positive:  MT-ND4, MT-CO2, MT-ATP6, MT-CO1, MT-CO3, MT-ND3, MT-CYB, MT-ND2, HOPX, TRDC 
	   MT-RNR2, XCL1, RGS16, XCL2, MT-RNR1, MT-ND1, KLRD1, TNFRSF18, TRGC2, GNLY 
	   FSTL3, NBL1, CRTAM, EGR2, ZNF683, MATK, NFKBIA, SLC16A3, TNFRSF9, ANKRD28 
Negative:  PFN1, CD74, TMSB10, IL32, HLA-DPA1, ARHGDIB, ACTB, CFL1, COTL1, CORO1A 
	   ANXA5, LINC01943, HLA-DRA, HLA-DRB1, FXYD2, COX8A, HLA-DQA1, HLA-DRB5, FTH1, ACTG1 
	   C12orf75, TMEM155, PPIA, PLEK, FABP5, CALM1, TRAT1, ATP5PF, PARK7, TXN 
Warning message:
"The default method for RunUMAP has changed from calling Python UMAP via reticulate to the R-native UWOT using the cosine metric
To use Python UMAP via reticulate, set umap.method to 'umap-learn' and metric to 'correlation'
This message will be shown once per session"22:48:29 UMAP embedding parameters a = 0.9922 b = 1.112
22:48:29 Read 2417 rows and found 30 numeric columns
22:48:29 Using Annoy for neighbor search, n_neighbors = 30
22:48:29 Building Annoy index with metric = cosine, n_trees = 50
0%   10   20   30   40   50   60   70   80   90   100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
22:48:30 Writing NN index file to temp file /tmp/21750497.1.interactive/RtmpvSEzGa/file4b6b32dfef34
22:48:30 Searching Annoy index using 1 thread, search_k = 3000
22:48:31 Annoy recall = 100%
22:48:31 Commencing smooth kNN distance calibration using 1 thread
22:48:32 Initializing from normalized Laplacian + noise
22:48:32 Commencing optimization for 500 epochs, with 102614 positive edges
22:48:44 Optimization finished
In [91]:
DefaultAssay(p55) <- "RNA"
p <- FeaturePlot(p55, c("CD3D","CD3E","TRAC","TRBC2","CD8A","CD8B","CD4","GZMB","PRF1"), pt.size = 0.1, min.cutoff = 0, combine = F, order = F, cols = c("grey85","firebrick1"))

for(i in 1:length(p)) {
  p[[i]] <- p[[i]] + NoLegend() + NoAxes() 
}

cowplot::plot_grid(plotlist = p)
In [92]:
DefaultAssay(p55) <- "RNA"
p <- FeaturePlot(p55, c("PDCD1","HAVCR2","LAG3","TNFRSF9","ENTPD1","IL7R","STAT4","MX1","MKI67"), pt.size = 0.1, min.cutoff = 0, combine = F, order = F, cols = c("grey85","firebrick1"))

for(i in 1:length(p)) {
  p[[i]] <- p[[i]] + NoLegend() + NoAxes() 
}

cowplot::plot_grid(plotlist = p)
In [19]:
umap <- DimPlot(p55, group.by = "FinalCellType", cols = umap_cols, pt.size = 0.4) + NoLegend()

cd3d <- FeaturePlot(p55, c("CD3D"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
cd8b <- FeaturePlot(p55, c("CD8B"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
cd4 <- FeaturePlot(p55, c("CD4"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
cd69 <- FeaturePlot(p55, c("CD69"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()

pdcd1 <- FeaturePlot(p55, c("PDCD1"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
havcr2 <- FeaturePlot(p55, c("HAVCR2"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
lag3 <- FeaturePlot(p55, c("LAG3"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
tnfrsf9 <- FeaturePlot(p55, c("TNFRSF9"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
entpd1 <- FeaturePlot(p55, c("ENTPD1"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
il7r <- FeaturePlot(p55, c("IL7R"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
stat4 <- FeaturePlot(p55, c("STAT4"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
mx1 <- FeaturePlot(p55, c("MX1"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
mki67 <- FeaturePlot(p55, c("MKI67"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()

pdf("p55_RNA_UMAP_Integrated_ClusterMetadata.pdf", useDingbats = F, width = 15, height = 5)
ggarrange(umap, cd3d, cd8b, cd4, cd69, tnfrsf9, pdcd1, havcr2, lag3, entpd1, il7r, stat4, mx1, mki67, nrow = 2, ncol = 7)
dev.off()
png: 2
In [20]:
p915 <- subset(cd8_seurobj, idents = c("p915"))

p915 <- FindVariableFeatures(p915, selection.method = "vst")
top10 <- head(VariableFeatures(p915), 10)
all.genes <- rownames(p915)
p915 <- ScaleData(p915, features = all.genes)
p915 <- RunPCA(p915, features = VariableFeatures(object = p915), npcs = 60)
ElbowPlot(p915,ndims = 50)
p915 <- RunUMAP(p915, dims = 1:30)
DimPlot(p915, group.by = "FinalCellType", cols = umap_cols)
Centering and scaling data matrix
PC_ 1 
Positive:  RPS6, RPS18, SAA1, CCL4, RPS23, JUNB, RPL18A, FTL, MT-ND2, APOC1 
	   NPC2, SPP1, TYROBP, C1QC, RPS2, CST3, RPS8, PSAP, IGKC, SAT1 
	   RPL7A, DUSP1, PMCH, ALOX5AP, FCER1G, MT-ND3, GPX1, RPS16, CXCR6, C1QB 
Negative:  UBE2C, STMN1, AURKB, BIRC5, MKI67, TOP2A, PCLAF, TUBA1B, TYMS, GTSE1 
	   RRM2, ZWINT, TUBB, HIST1H4C, CKS1B, CDK1, CCNB2, CDKN3, CENPF, TUBB4B 
	   MXD3, CENPW, CDCA5, CDC20, ASF1B, CCNA2, TK1, SPC25, KIFC1, NUSAP1 
PC_ 2 
Positive:  GINS2, PKM, MCM7, GAPDH, HSP90AB1, DCTPP1, E2F1, PAICS, MCM3, RANBP1 
	   FABP5, TNFRSF9, NME1, MCM5, GNG4, XCL1, PCNA, SOD1, C1QBP, TPI1 
	   MCM4, PGAM1, ATP5MC1, MCM6, PARK7, MCM2, GSTP1, DUT, CDC45, SRM 
Negative:  PLK1, CDC20, CENPA, CCNB2, TROAP, CCNB1, CDCA8, MXD3, TOP2A, UBE2C 
	   CENPF, ASPM, PSRC1, AURKB, GTSE1, KIF2C, PIMREG, DLGAP5, HMMR, BIRC5 
	   NUSAP1, HJURP, KNSTRN, MKI67, NEK2, CDCA3, TPX2, SGO2, CCNA2, NUF2 
PC_ 3 
Positive:  RPS18, PCLAF, RPS16, MCM7, GINS2, TYMS, TK1, CDT1, RPL35, RRM2 
	   RPS6, CDC45, RPL18A, RMI2, HMGA1, PCNA, ASF1B, E2F1, CLSPN, RPL3 
	   RPS21, RPS23, FAM111B, FEN1, UHRF1, RAD51, RFC4, RPL7A, CDC6, CDCA5 
Negative:  TNFRSF9, CXCL13, XCL1, LAG3, CRTAM, ZBED2, CD74, FAM3C, VCAM1, SOD1 
	   PARK7, GAPDH, BIRC3, HLA-DRB1, PTMS, ARL6IP1, UBB, NFKBIA, MAP1LC3A, HLA-DRA 
	   BHLHE40-AS1, XCL2, TSC22D1, CCL3, PKM, CD7, TNFSF4, ITM2A, TMSB10, PON3 
PC_ 4 
Positive:  XCL1, MT-ND2, TNFRSF9, BIRC3, XCL2, MT-ND3, FXYD6, PON3, CXCL13, MT-ND1 
	   BHLHE40-AS1, GNG4, CTHRC1, MT-ND4, MT-ATP6, KIR2DL4, MS4A6A, MT-CO3, RPLP1, MT-CYB 
	   CMC1, MT-CO1, TYMS, NFKBIA, CD200, ZBED2, MYOD1, CRTAM, NFKB2, CD70 
Negative:  TMSB4X, IL32, GZMA, COTL1, ACTB, CORO1A, ARHGDIB, ACTG1, PFN1, GZMB 
	   ISG15, MYL12A, ISG20, TMSB10, TIMD4, CNN2, CXCR6, MYL6, PSME2, CFL1 
	   GYG1, DDIT4, ARPC1B, TPM4, C12orf75, SUB1, IDH2, PSMB9, LAG3, IFI6 
PC_ 5 
Positive:  RPS18, RPL18A, RPS6, RPL3, RPS2, RPL10A, RPS16, RPS8, RPS23, RPL8 
	   CCNB1, RPL18, RPS5, RPS9, RPL36, RPL35, RPS21, RPL7A, XCL2, RACK1 
	   RPL5, PLK1, CDC20, RPLP0, RPLP1, TNFRSF18, EEF1B2, NPM3, CCNB2, DEPDC1 
Negative:  CD74, HLA-DRB1, HLA-DRA, HLA-DPA1, HLA-DPB1, TMSB4X, HLA-DQA1, GZMA, HLA-DRB5, HLA-DRB6 
	   HSPA1A, ACTB, TMSB10, VCAM1, PCNA, PMCH, TSC22D1, TYMS, LAG3, ASF1B 
	   HLA-DQB1, CDCA5, TCF19, RRM2, RAD51AP1, CLSPN, IFI6, ISG15, CCL3, ACTG1 
22:52:07 UMAP embedding parameters a = 0.9922 b = 1.112
22:52:07 Read 2639 rows and found 30 numeric columns
22:52:07 Using Annoy for neighbor search, n_neighbors = 30
22:52:07 Building Annoy index with metric = cosine, n_trees = 50
0%   10   20   30   40   50   60   70   80   90   100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
22:52:08 Writing NN index file to temp file /tmp/21750497.1.interactive/RtmpvSEzGa/file4b6b3b61d94b
22:52:08 Searching Annoy index using 1 thread, search_k = 3000
22:52:09 Annoy recall = 100%
22:52:10 Commencing smooth kNN distance calibration using 1 thread
22:52:10 Initializing from normalized Laplacian + noise
22:52:10 Commencing optimization for 500 epochs, with 113002 positive edges
22:52:23 Optimization finished
In [21]:
DefaultAssay(p915) <- "RNA"
p <- FeaturePlot(p915, c("CD3D","CD3E","TRAC","TRBC2","CD8A","CD8B","CD4","GZMB","PRF1"), pt.size = 0.1, min.cutoff = 0, combine = F, order = F, cols = c("grey85","firebrick1"))

for(i in 1:length(p)) {
  p[[i]] <- p[[i]] + NoLegend() + NoAxes() 
}

cowplot::plot_grid(plotlist = p)
In [22]:
DefaultAssay(p915) <- "RNA"
p <- FeaturePlot(p915, c("PDCD1","HAVCR2","LAG3","TNFRSF9","ENTPD1","IL7R","STAT4","MX1","MKI67"), pt.size = 0.1, min.cutoff = 0, combine = F, order = F, cols = c("grey85","firebrick1"))

for(i in 1:length(p)) {
  p[[i]] <- p[[i]] + NoLegend() + NoAxes() 
}

cowplot::plot_grid(plotlist = p)
In [23]:
umap <- DimPlot(p915, group.by = "FinalCellType", cols = umap_cols, pt.size = 0.4) + NoLegend()

cd3d <- FeaturePlot(p915, c("CD3D"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
cd8b <- FeaturePlot(p915, c("CD8B"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
cd4 <- FeaturePlot(p915, c("CD4"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
cd69 <- FeaturePlot(p915, c("CD69"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()

pdcd1 <- FeaturePlot(p915, c("PDCD1"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
havcr2 <- FeaturePlot(p915, c("HAVCR2"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
lag3 <- FeaturePlot(p915, c("LAG3"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
tnfrsf9 <- FeaturePlot(p915, c("TNFRSF9"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
entpd1 <- FeaturePlot(p915, c("ENTPD1"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
il7r <- FeaturePlot(p915, c("IL7R"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
stat4 <- FeaturePlot(p915, c("STAT4"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
mx1 <- FeaturePlot(p915, c("MX1"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
mki67 <- FeaturePlot(p915, c("MKI67"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()

pdf("p915_RNA_UMAP_Integrated_ClusterMetadata.pdf", useDingbats = F, width = 15, height = 5)
ggarrange(umap, cd3d, cd8b, cd4, cd69, tnfrsf9, pdcd1, havcr2, lag3, entpd1, il7r, stat4, mx1, mki67, nrow = 2, ncol = 7)
dev.off()
png: 2
In [24]:
p913 <- subset(cd8_seurobj, idents = c("p913"))

p913 <- FindVariableFeatures(p913, selection.method = "vst")
top10 <- head(VariableFeatures(p913), 10)
all.genes <- rownames(p913)
p913 <- ScaleData(p913, features = all.genes)
p913 <- RunPCA(p913, features = VariableFeatures(object = p913), npcs = 60)
ElbowPlot(p913,ndims = 50)
p913 <- RunUMAP(p913, dims = 1:30)
DimPlot(p913, group.by = "FinalCellType", cols = umap_cols)
Centering and scaling data matrix
PC_ 1 
Positive:  BIRC5, UBE2C, PCLAF, TOP2A, MYBL2, MKI67, CKS1B, CENPA, CCNB1, TYMS 
	   AURKB, CCNB2, CCNA2, CDC20, DLGAP5, EAF2, GGH, CDK1, CDCA5, CDKN3 
	   HMGB3, GTSE1, MND1, MXD3, CEP55, KIFC1, CDCA3, SHCBP1, PBK, STMN1 
Negative:  CCL4, IL32, JUN, PRMT9, IL7R, MT-ND2, SAT1, DNAJB1, FTL, MT-TV 
	   ZNF331, UVSSA, AP005482.1, CD7, DDX39B, AC129492.1, MXI1, BTG2, SESN1, KIFAP3 
	   TRGV10, AC025181.2, AL162377.1, LTB, TRDC, AP001160.1, YIPF1, RTP5, INTS4, TXK 
PC_ 2 
Positive:  AL133467.1, GAS6, PNOC, PYCR1, TXNDC5, RPP25, JCHAIN, TNFRSF17, MZB1, C19orf38 
	   FCGR2B, SLC17A9, TNFRSF13B, BTK, GPT2, POU2AF1, AL928768.3, IGKC, TLE1, MYDGF 
	   CTSH, CD180, SLC19A1, NANS, MEF2C, AC012236.1, NT5DC2, SRM, FKBP11, PARM1 
Negative:  CCNA2, KIF11, UBE2C, STMN1, MXD3, AURKB, TOP2A, DEPDC1B, CDK1, CENPA 
	   SGO1, SKA3, TPX2, ANLN, HMMR, KIF23, PKMYT1, ORC1, FAM83D, NUSAP1 
	   CDCA8, CLSPN, SKA1, PRC1, RRM2, C21orf58, PCLAF, EZH2, CDKN3, RAD51AP1 
PC_ 3 
Positive:  PDK1, AC012236.1, NUF2, SHCBP1, PIF1, IGHG3, IGLC2, PLK1, CDC20, PGM3 
	   HELLPAR, NCAPG, ZNF608, CCNB1, CDC25C, MXD3, PTP4A3, CCNB2, PRCP, CDCA3 
	   TBCEL, FAM92B, CENPE, SGO2, CDCA8, SLC44A1, PARM1, SLC17A9, SDC1, CLCC1 
Negative:  PFN1, RPL7A, TMSB10, RPL29, GAPDH, CFL1, ACTB, ACTG1, C19orf53, RPL37A 
	   ATP5MG, RPS26, COX7A2, RPS2, CCL22, WDFY4, SUB1, ARPC2, SERF2, COTL1 
	   ATP5ME, CCDC167, UQCRQ, CHCHD2, DBI, DCTPP1, RPS5, BLNK, ARPC1B, GNG5 
PC_ 4 
Positive:  CLSPN, FEN1, GGH, MT2A, PKMYT1, RRM2, GMNN, INAFM1, TROAP, SMC2 
	   TYMS, NOP10, RPN1, CCL3, UHRF1, FOXM1, SUB1, MASTL, CENPQ, TMED9 
	   SPCS3, PHGDH, SKA2, HAVCR2, TFF3, VIM, SKA3, WDR34, GZMB, EBP 
Negative:  VPREB3, SWAP70, MS4A1, IRF8, LY86, SYT17, AL139042.1, BASP1, CD40, LINC01857 
	   HLA-DOB, IGHD, AL139020.1, BLNK, SPIB, EAF2, NAPSB, LAT2, SAV1, FCRLA 
	   CCDC144B, PLK1, ECT2, PAX5, ZNF608, ACY3, BLK, KIF20A, CD19, ADAM28 
PC_ 5 
Positive:  ORC1, PLK1, DLGAP5, F5, SHCBP1, BRSK1, CDC20, CAMK1, AC012236.1, CCNB2 
	   CCNB1, SGO2, TNFRSF18, TMSB10, BIRC5, KIF20A, AURKA, SERF2, TNFRSF4, HMMR 
	   ZNF608, NT5DC2, SEC24A, RPL7A, ANKMY1, ICA1, TPTEP2, LIMS2, SDC1, ZNF10 
Negative:  ZNF529, HHEX, CD83, NAPSB, ADAM28, RRM2, TCF19, PKMYT1, UHRF1, PRRG4 
	   CENPQ, FEN1, BANK1, CCL22, WDFY4, CLSPN, CEP170, MT-ND5, POU2F2, TFF3 
	   MT-RNR1, RAD51, CBFA2T3, LINC00926, MT-ND4, GMNN, CCNA2, SLC30A1, TYMS, MCM2 
22:52:38 UMAP embedding parameters a = 0.9922 b = 1.112
22:52:38 Read 400 rows and found 30 numeric columns
22:52:38 Using Annoy for neighbor search, n_neighbors = 30
22:52:38 Building Annoy index with metric = cosine, n_trees = 50
0%   10   20   30   40   50   60   70   80   90   100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
22:52:38 Writing NN index file to temp file /tmp/21750497.1.interactive/RtmpvSEzGa/file4b6b4ab1e7cf
22:52:38 Searching Annoy index using 1 thread, search_k = 3000
22:52:38 Annoy recall = 100%
22:52:38 Commencing smooth kNN distance calibration using 1 thread
22:52:39 Initializing from normalized Laplacian + noise
22:52:39 Commencing optimization for 500 epochs, with 15658 positive edges
22:52:41 Optimization finished
In [25]:
DefaultAssay(p913) <- "RNA"
p <- FeaturePlot(p913, c("CD3D","CD3E","TRAC","TRBC2","CD8A","CD8B","CD4","GZMB","PRF1"), pt.size = 0.1, min.cutoff = 0, combine = F, order = F, cols = c("grey85","firebrick1"))

for(i in 1:length(p)) {
  p[[i]] <- p[[i]] + NoLegend() + NoAxes() 
}

cowplot::plot_grid(plotlist = p)
In [26]:
DefaultAssay(p913) <- "RNA"
p <- FeaturePlot(p913, c("PDCD1","HAVCR2","LAG3","TNFRSF9","ENTPD1","IL7R","STAT4","MX1","MKI67"), pt.size = 0.1, min.cutoff = 0, combine = F, order = F, cols = c("grey85","firebrick1"))

for(i in 1:length(p)) {
  p[[i]] <- p[[i]] + NoLegend() + NoAxes() 
}

cowplot::plot_grid(plotlist = p)
In [27]:
umap <- DimPlot(p913, group.by = "FinalCellType", cols = umap_cols, pt.size = 0.4) + NoLegend()

cd3d <- FeaturePlot(p913, c("CD3D"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
cd8b <- FeaturePlot(p913, c("CD8B"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
cd4 <- FeaturePlot(p913, c("CD4"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
cd69 <- FeaturePlot(p913, c("CD69"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()

pdcd1 <- FeaturePlot(p913, c("PDCD1"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
havcr2 <- FeaturePlot(p913, c("HAVCR2"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
lag3 <- FeaturePlot(p913, c("LAG3"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
tnfrsf9 <- FeaturePlot(p913, c("TNFRSF9"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
entpd1 <- FeaturePlot(p913, c("ENTPD1"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
il7r <- FeaturePlot(p913, c("IL7R"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
stat4 <- FeaturePlot(p913, c("STAT4"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
mx1 <- FeaturePlot(p913, c("MX1"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
mki67 <- FeaturePlot(p913, c("MKI67"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()

pdf("p913_RNA_UMAP_Integrated_ClusterMetadata.pdf", useDingbats = F, width = 15, height = 5)
ggarrange(umap, cd3d, cd8b, cd4, cd69, tnfrsf9, pdcd1, havcr2, lag3, entpd1, il7r, stat4, mx1, mki67, nrow = 2, ncol = 7)
dev.off()
png: 2
In [28]:
p906 <- subset(cd8_seurobj, idents = c("p906"))

p906 <- FindVariableFeatures(p906, selection.method = "vst")
top10 <- head(VariableFeatures(p906), 10)
all.genes <- rownames(p906)
p906 <- ScaleData(p906, features = all.genes)
p906 <- RunPCA(p906, features = VariableFeatures(object = p906), npcs = 60)
ElbowPlot(p906,ndims = 50)
p906 <- RunUMAP(p906, dims = 1:30)
DimPlot(p906, group.by = "FinalCellType", cols = umap_cols)
Centering and scaling data matrix
PC_ 1 
Positive:  TMSB4X, S100A4, LTB, IGKC, ISG15, NKG7, MX1, GZMH, CCL4, TRGC2 
	   ISG20, IFI6, IFIT3, TRIM22, HBB, LY6E, JUN, FOS, IFI44, LAG3 
	   IFI44L, OAS1, CTSW, ZNF276, CLIC3, EPSTI1, AP5M1, RSAD2, PIK3IP1, SELL 
Negative:  RP11-14N7.2, BIRC5, CENPF, RRM2, GMNN, TK1, TPX2, TOP2A, PCLAF, FOXM1 
	   UBE2C, PLEKHG3, MAD2L1, UBE2T, DSEL, BEX1, CDCA5, CDKN3, HMGB3, TMEM54 
	   SPDL1, CENPA, CAVIN3, KNSTRN, ADAM9, CKS2, NEK2, KIF2C, SALL1, DZIP1 
PC_ 2 
Positive:  ASPM, DLGAP5, MXD3, UBE2C, PLK1, FAM83D, CCNB2, BUB1, ASF1B, AURKB 
	   PIF1, MKI67, MND1, CENPE, NUF2, SPC25, SKA3, KIF20B, MIR181A1HG, AC091057.6 
	   SGO1, CCNB1, CENPW, CDCA2, HIST1H1B, SGO2, FBXO5, HJURP, GTSE1, CDCA8 
Negative:  KCNK1, AIF1L, KCTD3, ADAM9, RECQL4, NADK2, DZIP1, DSEL, CKAP4, SULF2 
	   EPDR1, ACOT11, CXCL16, PLAU, LINC01320, GOLM1, BEX1, TM4SF4, SALL1, PLEKHG3 
	   FTL, TEAD1, TMEM98, MT-RNR2, SLC39A14, MT-CO1, TMEM54, C19orf54, FADS1, RP11-566K19.6 
PC_ 3 
Positive:  CLSPN, UHRF1, FAM111B, DTL, WDR34, KCTD3, E2F2, INAFM1, RECQL4, NADK2 
	   MYBL2, PAQR4, EPDR1, SULF2, ACOT11, CXCL16, CKAP4, RAD51AP1, CDKN1C, AC091057.6 
	   ASF1B, RHOBTB2, LINC01320, MCM2, DHFR, BRCA1, TARS2, BRI3BP, BRD3, SEC22C 
Negative:  SEMA6A, SH3RF1, KBTBD11, OSGIN1, CRNDE, ARL5B, WASHC5, AC009275.1, CU638689.5, SOCS7 
	   VGF, CDKN3, VEGFA, BCAR1, GMPR, MNS1, OPA1, HMMR, SERINC2, AHCY 
	   SLC2A2, PTK2, CCDC68, MAP1B, RAB3IP, ALDH5A1, KIF11, ANLN, CENPA, RAB27B 
PC_ 4 
Positive:  MAP1B, TRIM6, WDR66, NEURL1B, SNCA, SRGAP1, CAVIN3, SULT1C2, ATP8B3, BEX1 
	   SALL1, MAP7, MKS1, RDM1, KIF4A, IL6R, GPR160, AC020917.4, MITF, DIAPH3 
	   SLC2A2, PRC1, GRB7, KNSTRN, FOXM1, RP11-566K19.6, SSPN, ADAM9, MAN1A1, RTKN 
Negative:  SERINC2, AC009275.1, SPAG5, KCNS3, MYO1D, ASB13, PXDC1, SDC1, CENPS, C19orf54 
	   SOCS7, SEPT10, OSBP, PLCB3, KBTBD7, AHCY, OSGIN1, RAD54L, SYCE1L, TEAD4 
	   GMPR, KIF11, AC018521.5, MXD3, RHPN1, LARP1B, EEA1, BICC1, AP1M2, KIF15 
PC_ 5 
Positive:  ALDH5A1, CTDSPL, ARL5B, WASHC5, MEF2C, GPNMB, SSX2IP, CCN1, PBK, PLD1 
	   MATN2, TSC22D1, UNC93A, AR, DZIP1, ING2, RAB27B, NUF2, GGH, TUSC1 
	   AC006449.6, RAC3, BEX1, C1QTNF6, TAF5, ZHX1, CBR3, TCEA2, METTL7B, JPT2 
Negative:  CCDC68, SH3RF1, LAMC1, SOCS7, ANO6, CENPH, GRB7, BNC2-AS1, MYO1B, ARFIP1 
	   CU638689.5, OSGIN1, TEAD1, PPP1R9B, MKS1, PLAU, AGXT2, KIF11, CEP152, LCN2 
	   ATP8B3, GMNN, ECT2, CTNNAL1, NEK2, SERPINE2, BCAR1, NEIL3, EEA1, ADAM9 
22:52:50 UMAP embedding parameters a = 0.9922 b = 1.112
22:52:50 Read 241 rows and found 30 numeric columns
22:52:50 Using Annoy for neighbor search, n_neighbors = 30
22:52:50 Building Annoy index with metric = cosine, n_trees = 50
0%   10   20   30   40   50   60   70   80   90   100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
22:52:50 Writing NN index file to temp file /tmp/21750497.1.interactive/RtmpvSEzGa/file4b6b412b48b3
22:52:50 Searching Annoy index using 1 thread, search_k = 3000
22:52:50 Annoy recall = 100%
22:52:50 Commencing smooth kNN distance calibration using 1 thread
22:52:51 Initializing from normalized Laplacian + noise
22:52:51 Commencing optimization for 500 epochs, with 9042 positive edges
22:52:52 Optimization finished
In [29]:
DefaultAssay(p906) <- "RNA"
p <- FeaturePlot(p906, c("CD3D","CD3E","TRAC","TRBC2","CD8A","CD8B","CD4","GZMB","PRF1"), pt.size = 0.1, min.cutoff = 0, combine = F, order = F, cols = c("grey85","firebrick1"))

for(i in 1:length(p)) {
  p[[i]] <- p[[i]] + NoLegend() + NoAxes() 
}

cowplot::plot_grid(plotlist = p)
In [30]:
DefaultAssay(p906) <- "RNA"
p <- FeaturePlot(p906, c("PDCD1","HAVCR2","LAG3","TNFRSF9","ENTPD1","IL7R","STAT4","MX1","MKI67"), pt.size = 0.1, min.cutoff = 0, combine = F, order = F, cols = c("grey85","firebrick1"))

for(i in 1:length(p)) {
  p[[i]] <- p[[i]] + NoLegend() + NoAxes() 
}

cowplot::plot_grid(plotlist = p)
In [31]:
umap <- DimPlot(p906, group.by = "FinalCellType", cols = umap_cols, pt.size = 0.4) + NoLegend()

cd3d <- FeaturePlot(p906, c("CD3D"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
cd8b <- FeaturePlot(p906, c("CD8B"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
cd4 <- FeaturePlot(p906, c("CD4"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
cd69 <- FeaturePlot(p906, c("CD69"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()

pdcd1 <- FeaturePlot(p906, c("PDCD1"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
havcr2 <- FeaturePlot(p906, c("HAVCR2"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
lag3 <- FeaturePlot(p906, c("LAG3"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
tnfrsf9 <- FeaturePlot(p906, c("TNFRSF9"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
entpd1 <- FeaturePlot(p906, c("ENTPD1"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
il7r <- FeaturePlot(p906, c("IL7R"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
stat4 <- FeaturePlot(p906, c("STAT4"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
mx1 <- FeaturePlot(p906, c("MX1"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
mki67 <- FeaturePlot(p906, c("MKI67"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()

pdf("p906_RNA_UMAP_Integrated_ClusterMetadata.pdf", useDingbats = F, width = 15, height = 5)
ggarrange(umap, cd3d, cd8b, cd4, cd69, tnfrsf9, pdcd1, havcr2, lag3, entpd1, il7r, stat4, mx1, mki67, nrow = 2, ncol = 7)
dev.off()
png: 2
In [32]:
p76 <- subset(cd8_seurobj, idents = c("p76"))

p76 <- FindVariableFeatures(p76, selection.method = "vst")
top10 <- head(VariableFeatures(p76), 10)
all.genes <- rownames(p76)
p76 <- ScaleData(p76, features = all.genes)
p76 <- RunPCA(p76, features = VariableFeatures(object = p76), npcs = 60)
ElbowPlot(p76,ndims = 50)
p76 <- RunUMAP(p76, dims = 1:30)
DimPlot(p76, group.by = "FinalCellType", cols = umap_cols)
Centering and scaling data matrix
PC_ 1 
Positive:  RPS18, CCL4, HBB, MT-ND2, ZFP36, RGS1, CST3, CREM, APOC1, GPX1 
	   RPL3, PDK4, EEF1A1, VMP1, RPS6, B4GALT1, C1QB, HBA2, C1orf56, MT-ND3 
	   NDRG1, AC243829.1, PIK3R1, FTH1, DKK3, CTSD, HNRNPH1, AUTS2, CDC42SE1, FCER1G 
Negative:  BIRC5, MKI67, UBE2C, TOP2A, RRM2, AURKB, PCLAF, TYMS, CDCA5, STMN1 
	   SPC25, ASF1B, ZWINT, GTSE1, CDK1, CCNA2, TUBA1B, NUSAP1, CENPF, CDCA3 
	   ASPM, KIF2C, CENPA, TUBB, CKS1B, RAD51AP1, NUF2, SPC24, HIST1H4C, CCNB2 
PC_ 2 
Positive:  CD74, GINS2, AL391056.1, LINC01943, TMSB10, TNFRSF18, MCM5, FXYD2, RPLP1, TK1 
	   PAQR4, SUB1, CDT1, ENTPD1, HLA-DQA1, RPS2, PKM, GAPDH, PARK7, HLA-DRB1 
	   SNAP47, LTB, HAVCR2, TPI1, E2F1, DUT, BLVRA, BIRC3, PGAM1, FABP5 
Negative:  PLK1, CDC20, TROAP, CCNB1, CCNB2, CENPF, CENPA, FAM72D, ASPM, HMMR 
	   KIF14, KIF2C, CDCA8, GTSE1, SGO1, SGO2, TOP2A, UBE2C, KIF23, AURKA 
	   HMGB3, DLGAP5, BIRC5, KNSTRN, BORA, KIFC1, DEPDC1, PRR11, CDK1, CCNA2 
PC_ 3 
Positive:  CD74, AL391056.1, HAVCR2, VCAM1, HLA-DRB1, HLA-DRB5, HLA-DPB1, NKG7, FXYD2, LINC01943 
	   HLA-DRA, PMCH, TMEM155, PTMS, PLK1, FAM3C, CENPE, HLA-DQA1, CCNB1, SNAP47 
	   BHLHE40-AS1, CAV1, KNSTRN, LAG3, HMOX1, TNFRSF9, CDC20, MIR155HG, CMC1, PIF1 
Negative:  RPS18, TK1, PCNA, GINS2, UHRF1, RPL3, PKMYT1, ESCO2, CDT1, DHFR 
	   MND1, TYMS, PCLAF, CLSPN, RRM2, FEN1, IL7R, RAD54L, CDCA5, E2F1 
	   RPS2, ASF1B, MYBL2, LEF1, EEF1B2, RPS8, MCM10, PAQR4, DUT, RPS6 
PC_ 4 
Positive:  SH3BGRL3, COTL1, TMSB4X, ACTB, TPT1, GZMH, TMSB10, MYL12A, ARHGDIB, PFN1 
	   ZNF683, RPS18, LINC01871, ANXA1, S100A10, ABRACL, EEF1A1, RPS8, RAC2, PPP1CA 
	   CDC25B, ARPC3, BORA, RPS2, GLIPR2, RACK1, LINC02446, TPM4, ARPC1B, PIMREG 
Negative:  RRM2, MT-ND4, CDCA5, CLSPN, MT-ND2, ESCO2, CCNE2, ASF1B, HAVCR2, MT-ND3 
	   RAD51AP1, HLA-DRA, VCAM1, CMC1, MT-ND5, MT-RNR2, MCM10, ZWINT, MT-CO2, MT-CO3 
	   MT-CO1, MT-ATP6, SPC25, CD74, TYMS, FXYD2, SAC3D1, NCAPG, RGS1, CKAP2L 
PC_ 5 
Positive:  MT-CO3, TNFRSF18, TRDC, MT-CYB, MT-CO1, MT-CO2, MT-ATP6, MT-ND2, MT-ND4, KRT81 
	   GNLY, KRT86, KLRC1, MT-ND3, KLRD1, SH2D1B, MT-RNR2, KLRC2, TNFRSF4, XCL1 
	   KLRB1, CD7, HOPX, KIR3DL2, WIPF3, NFKB2, MT-ND1, SNX9, TMIGD2, EPOP 
Negative:  TMSB4X, GZMA, SH3BGRL3, COTL1, PFN1, TMSB10, CCDC167, HLA-DPB1, IDH2, CD74 
	   CRIP1, ACTB, CXCL13, HLA-DPA1, CFL1, NKG7, CORO1A, ELOB, COX8A, SUB1 
	   HLA-DRB5, HLA-DRB1, C12orf75, MIR4435-2HG, CCL4, CDCA3, ARHGDIB, TTK, PSMB9, KIF15 
22:53:05 UMAP embedding parameters a = 0.9922 b = 1.112
22:53:05 Read 939 rows and found 30 numeric columns
22:53:05 Using Annoy for neighbor search, n_neighbors = 30
22:53:05 Building Annoy index with metric = cosine, n_trees = 50
0%   10   20   30   40   50   60   70   80   90   100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
22:53:05 Writing NN index file to temp file /tmp/21750497.1.interactive/RtmpvSEzGa/file4b6b151d0db5
22:53:05 Searching Annoy index using 1 thread, search_k = 3000
22:53:06 Annoy recall = 100%
22:53:06 Commencing smooth kNN distance calibration using 1 thread
22:53:07 Initializing from normalized Laplacian + noise
22:53:07 Commencing optimization for 500 epochs, with 36490 positive edges
22:53:11 Optimization finished
In [33]:
DefaultAssay(p76) <- "RNA"
p <- FeaturePlot(p76, c("CD3D","CD3E","TRAC","TRBC2","CD8A","CD8B","CD4","GZMB","PRF1"), pt.size = 0.1, min.cutoff = 0, combine = F, order = F, cols = c("grey85","firebrick1"))

for(i in 1:length(p)) {
  p[[i]] <- p[[i]] + NoLegend() + NoAxes() 
}

cowplot::plot_grid(plotlist = p)
In [34]:
DefaultAssay(p76) <- "RNA"
p <- FeaturePlot(p76, c("PDCD1","HAVCR2","LAG3","TNFRSF9","ENTPD1","IL7R","STAT4","MX1","MKI67"), pt.size = 0.1, min.cutoff = 0, combine = F, order = F, cols = c("grey85","firebrick1"))

for(i in 1:length(p)) {
  p[[i]] <- p[[i]] + NoLegend() + NoAxes() 
}

cowplot::plot_grid(plotlist = p)
In [35]:
umap <- DimPlot(p76, group.by = "FinalCellType", cols = umap_cols, pt.size = 0.4) + NoLegend()

cd3d <- FeaturePlot(p76, c("CD3D"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
cd8b <- FeaturePlot(p76, c("CD8B"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
cd4 <- FeaturePlot(p76, c("CD4"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
cd69 <- FeaturePlot(p76, c("CD69"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()

pdcd1 <- FeaturePlot(p76, c("PDCD1"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
havcr2 <- FeaturePlot(p76, c("HAVCR2"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
lag3 <- FeaturePlot(p76, c("LAG3"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
tnfrsf9 <- FeaturePlot(p76, c("TNFRSF9"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
entpd1 <- FeaturePlot(p76, c("ENTPD1"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
il7r <- FeaturePlot(p76, c("IL7R"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
stat4 <- FeaturePlot(p76, c("STAT4"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
mx1 <- FeaturePlot(p76, c("MX1"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
mki67 <- FeaturePlot(p76, c("MKI67"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()

pdf("p76_RNA_UMAP_Integrated_ClusterMetadata.pdf", useDingbats = F, width = 15, height = 5)
ggarrange(umap, cd3d, cd8b, cd4, cd69, tnfrsf9, pdcd1, havcr2, lag3, entpd1, il7r, stat4, mx1, mki67, nrow = 2, ncol = 7)
dev.off()
png: 2
In [36]:
p90 <- subset(cd8_seurobj, idents = c("p90"))

p90 <- FindVariableFeatures(p90, selection.method = "vst")
top10 <- head(VariableFeatures(p90), 10)
all.genes <- rownames(p90)
p90 <- ScaleData(p90, features = all.genes)
p90 <- RunPCA(p90, features = VariableFeatures(object = p90), npcs = 60)
ElbowPlot(p90,ndims = 50)
p90 <- RunUMAP(p90, dims = 1:30)
DimPlot(p90, group.by = "FinalCellType", cols = umap_cols)
Centering and scaling data matrix
PC_ 1 
Positive:  NKG7, FTL, RPS18, RPS2, KLRD1, IGFBP5, GZMB, NDUFA4L2, TSC22D3, CMC1 
	   GZMH, GNLY, PATL2, FGFBP2, CP, RPL7, TRGC2, FCRL6, FABP7, PTGDR 
	   PRF1, CCL4, LINC00685, FGG, TRGC1, RPL36, DUSP2, HBB, MIAT, LYZ 
Negative:  UBE2C, STMN1, TOP2A, BIRC5, MKI67, RRM2, NUSAP1, TYMS, PCLAF, AURKB 
	   H2AFX, CKS1B, SPC25, HIST1H4C, ASF1B, TUBA1B, CCNA2, HMGB2, CDK1, KIFC1 
	   CDCA3, ZWINT, CDKN3, ASPM, TUBB, CENPF, MND1, TUBB4B, CKS2, GTSE1 
PC_ 2 
Positive:  ITM2A, RPLP1, GAPDH, CD74, CD27, GINS2, FABP5, LAG3, COTL1, DUT 
	   GZMK, TK1, TNFRSF9, MIR155HG, CXCL13, ID3, RANBP1, RGS1, PDCD1, PCNA 
	   DHFR, FAM3C, ZBED2, PCLAF, IFNG, PKMYT1, SNAP47, ITM2C, DCTPP1, RFC2 
Negative:  DLGAP5, CCNB2, CDC20, GNLY, CCNB1, CENPF, ASPM, PIMREG, KIF23, GTSE1 
	   FGFBP2, KIF20A, CENPA, NEK2, KPNA2, KNL1, MKI67, TPX2, ARHGAP11A, NUF2 
	   TOP2A, AURKB, HJURP, KLRB1, CKAP2L, PLK1, HMMR, TTK, MXD3, UBE2C 
PC_ 3 
Positive:  CD27, MIR155HG, RGS1, TNFRSF9, LAG3, CXCL13, ZBED2, CD74, VCAM1, PDCD1 
	   DRAIC, HLA-DRA, HLA-DRB1, DUSP2, PTPN7, TSHZ2, CCL4, ASPM, HLA-DQB1, PIF1 
	   CCL3, SNAP47, CLECL1, TOX, HAVCR2, CENPF, CCNB2, PHLDA1, MT-ND2, PTMS 
Negative:  GNLY, GZMH, FGFBP2, KLRB1, ANXA1, PLAC8, TK1, TMSB10, KLRD1, GZMB 
	   S100A4, CD52, S100A10, RPS18, CX3CR1, S1PR5, GINS2, PTGER2, KLRF1, MATK 
	   RIPOR2, RASGRP2, PCLAF, C12orf75, RPS2, XBP1, SPON2, DTL, UPP1, SELL 
PC_ 4 
Positive:  PCLAF, RRM2, TYMS, CENPM, RAD51, CDT1, WDR34, FAM111B, CLSPN, CCNE2 
	   MND1, ATAD2, FEN1, CDCA5, DTL, LIG1, ATAD5, TK1, ZNF367, MCM7 
	   FANCD2, ASF1B, UHRF1, WDR76, CENPU, AL355488.1, PCNA, HELLS, STMN1, MCM6 
Negative:  ACTG1, S100A4, ACTB, ARHGDIB, GZMH, CD52, LGALS1, PRF1, PFN1, CFL1 
	   ANXA1, GZMB, NKG7, HNRNPA1, SASH3, UBB, IFITM2, CALM1, ID2, CD7 
	   ANXA2, PTPN6, GNLY, TPM4, NCR3, H3F3A, ZAP70, SUB1, CDK2AP2, POMP 
PC_ 5 
Positive:  MT-CO2, GZMB, NKG7, MT-CO1, MT-ND3, MT-ND4, GNLY, MT-ATP6, FGFBP2, MT-CO3 
	   KLRD1, PRF1, MT-CYB, PLAC8, MT-ND2, NEAT1, KLF2, MT-ND5, CD7, CX3CR1 
	   SPON2, MT-RNR2, TBX21, HOPX, S1PR5, ZBED2, CMC1, ZEB2, MT-ND1, KLRC2 
Negative:  TMSB4X, GZMK, CXCR3, ZNF683, COTL1, ITM2C, LTB, PLP2, CD52, LINC00892 
	   ACTB, SUSD3, HMGA1, CXCR6, PTTG1, CAPG, CCR2, CD40LG, CNN2, FLT3LG 
	   GLIPR2, CORO1B, APOBEC3H, JUN, VIM, CKLF, RGCC, ARHGDIB, ANXA2, RGL4 
22:53:26 UMAP embedding parameters a = 0.9922 b = 1.112
22:53:26 Read 799 rows and found 30 numeric columns
22:53:26 Using Annoy for neighbor search, n_neighbors = 30
22:53:26 Building Annoy index with metric = cosine, n_trees = 50
0%   10   20   30   40   50   60   70   80   90   100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
22:53:27 Writing NN index file to temp file /tmp/21750497.1.interactive/RtmpvSEzGa/file4b6b2fcea3c2
22:53:27 Searching Annoy index using 1 thread, search_k = 3000
22:53:27 Annoy recall = 100%
22:53:27 Commencing smooth kNN distance calibration using 1 thread
22:53:28 Initializing from normalized Laplacian + noise
22:53:28 Commencing optimization for 500 epochs, with 32202 positive edges
22:53:32 Optimization finished
In [37]:
DefaultAssay(p90) <- "RNA"
p <- FeaturePlot(p90, c("CD3D","CD3E","TRAC","TRBC2","CD8A","CD8B","CD4","GZMB","PRF1"), pt.size = 0.1, min.cutoff = 0, combine = F, order = F, cols = c("grey85","firebrick1"))

for(i in 1:length(p)) {
  p[[i]] <- p[[i]] + NoLegend() + NoAxes() 
}

cowplot::plot_grid(plotlist = p)
In [38]:
DefaultAssay(p90) <- "RNA"
p <- FeaturePlot(p90, c("PDCD1","HAVCR2","LAG3","TNFRSF9","ENTPD1","IL7R","STAT4","MX1","MKI67"), pt.size = 0.1, min.cutoff = 0, combine = F, order = F, cols = c("grey85","firebrick1"))

for(i in 1:length(p)) {
  p[[i]] <- p[[i]] + NoLegend() + NoAxes() 
}

cowplot::plot_grid(plotlist = p)
In [39]:
umap <- DimPlot(p90, group.by = "FinalCellType", cols = umap_cols, pt.size = 0.4) + NoLegend()

cd3d <- FeaturePlot(p90, c("CD3D"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
cd8b <- FeaturePlot(p90, c("CD8B"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
cd4 <- FeaturePlot(p90, c("CD4"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
cd69 <- FeaturePlot(p90, c("CD69"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()

pdcd1 <- FeaturePlot(p90, c("PDCD1"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
havcr2 <- FeaturePlot(p90, c("HAVCR2"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
lag3 <- FeaturePlot(p90, c("LAG3"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
tnfrsf9 <- FeaturePlot(p90, c("TNFRSF9"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
entpd1 <- FeaturePlot(p90, c("ENTPD1"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
il7r <- FeaturePlot(p90, c("IL7R"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
stat4 <- FeaturePlot(p90, c("STAT4"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
mx1 <- FeaturePlot(p90, c("MX1"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()
mki67 <- FeaturePlot(p90, c("MKI67"), pt.size = 0.4, min.cutoff = 0, order = F, cols = c("grey85","firebrick1")) + NoLegend()

pdf("p90_RNA_UMAP_Integrated_ClusterMetadata.pdf", useDingbats = F, width = 15, height = 5)
ggarrange(umap, cd3d, cd8b, cd4, cd69, tnfrsf9, pdcd1, havcr2, lag3, entpd1, il7r, stat4, mx1, mki67, nrow = 2, ncol = 7)
dev.off()
png: 2
In [ ]: